#ifndef AFFINITY_ID_GENERATOR_RANGE_H
#define AFFINITY_ID_GENERATOR_RANGE_H
#include "am_machine.h"
namespace AceMesh_runtime
{

class affinity_id_generator_range
{
public:
    affinity_id_generator_range(int start, int end);
    affinity_id_generator_range(int thread_nums);
    affinity_id_generator_range();
    ~affinity_id_generator_range();
    int get_affinity_id();
    void reset_affinity_id();
    void set_thread_num(int thread_nums);
    void set_sub_affinity(int startid, int size);

private:
    int id;
    int start;
    int end;
};
}  // namespace AceMesh_runtime

#endif
